package com.cloudpivot.receivales.ding.scenegroup.domain;

import lombok.Data;

import java.util.Map;

/**
 * 更新 互动卡片对象
 */
@Data
public class UpdateInteractiveCardDTO {

//    private String cardTemplateId;
    /**
     * 用户自定义的 互动卡片guid
     */
    private String outTrackId;

    /**
     *卡片数据
     */
    private CardData cardData;

    @Data
    public static class CardData{
        /**
         * 卡片模板内容替换参数，普通文本类型
         */
        private Map<String,String> cardParamMap;
        /**
         * 卡片模板内容替换参数，多媒体类型
         */
        private Map<String,String> cardMediaIdParamMap;
    }

    /**
     * 指定用户可见的按钮列表
     */
    private Map<String,Object> privateData;

//    @Data
//    public static class UserPrivateData{
//        /**
//         * 卡片模板内容替换参数，普通文本类型
//         */
//        private Map<String,String> cardParamMap;
//        /**
//         * 卡片模板内容替换参数，多媒体类型
//         */
//        private Map<String,String> cardMediaIdParamMap;
//    }


    /**
     *用户ID类型
     */
    private Integer userIdType=1;

    /**
     *卡片操作
     */
    private CarOptions cardOptions;

    @Data
    public static class CarOptions{
        /**
         * 按key更新cardData数据，不填默认覆盖更新。
         */
        private Boolean updateCardDataByKey;
        /**
         * 按key更新privateData用户数据，不填默认覆盖更新。
         */
        private Boolean updatePrivateDataByKey;
    }

}
